FORMAT
이 명령어는 플로피디스크나 하드디스크 혹은 읽고 쓸 수 있는 광디스크를 초기화하기 위해 사용한다.
플로피디스크를 새로 구입한 경우에 컴퓨터에서 바로 사용할 수 없고 FORMAT 명령어를 사용하여 플로피디스크를 초기화해야 한다.
하드디스크의 경우에도 마찬가지로 Fdisk를 이용하여 분할을 만들거나 변경한 경우 이 명령어를 사용하여 포맷하여야만 사용할 수 있다.
디스크를 포맷할 때 FORMAT 명령어는 기존의 자료를 모두 삭제하고, 새로운 루트 디렉토리와 파일 할당표를 만든 다음 각각의 트랙과 섹터에 대하여 손상 여부를 검사한다.
따라서, 새로 구입한 플로피디스크는 FORMAT 명령어를 사용하여 초기화하여야만 사용할 수 있지만 일단 포맷된 디스크는 다시 포맷하지 않아도 데이터 파일을 삭제함으로써 계속 사용할 수 있다.
만약, 기존에 사용하던 디스크를 포맷한 경우에는 디스크에 있는 모든 데이터는 삭제된다.
MS-DOS에서는 FORMAT에 의해 삭제된 데이터를 복구할 수 있는 UNFORMAT 명령을 제공했지만 윈도우 시대에는 지원하지 않는다.
■ 명령어 위치
윈도우 시동 디스크로 부팅하면 진단 도구가 들어 있는 램 드라이브에 실행 파일 형태로 존재하는 외부 명령어
윈도우가 설치되어 있는 하드디스크(C:\Windows\Command)에 실행 파일 형태로 존재하는 외부 명령어
■ 사용법
FORMAT drive: [/V[:label]] [/Q] [/F:size] [/B | /S] [/C]
FORMAT drive: [/V[:label]] [/Q] [/T:tracks /N:sectors] [/B | /S] [/C]
FORMAT drive: [/V[:label]] [/Q] [/1] [/4] [/B | /S] [/C]
FORMAT drive: [/Q] [/1] [/4] [/8] [/B | /S] [/C]
■ 옵션 및 매개변수

drive: | 사용자가 포맷하고자 하는 디스크를 포함하고 있는 드라이브를 지정한다. 만약, 다음에 설명하는 옵션들 중에서 어떤 옵션도 사용하지 않는 경우 MS-DOS는 그 디스크의 디폴트 크기를 결정하기 위하여 디폴트 드라이브 유형을 사용한다.
/v:label | 포맷할 디스크의 볼륨 레이블을 지정한다. 볼륨 레이블은 디스크를 확인하기 위한 것으로 최대 11문자까지 지정할 수 있다. 만약 /v 옵션을 생략하거나 볼륨 레이블을 지정하지 않으면 포맷을 끝낸 뒤에 레이블을 입력할 수 있도록 한다. 포맷 완료후 볼륨 레이블을 입력하라는 프롬프트가 나타나지 않도록 하려면 /v: 옵션 다음에 레이블을 입력하면 된다. 만약 볼륨 레이블이 스페이스(공백)를 포함시키려면 반드시 레이블을 따옴표로 묶어야 한다. /v 옵션은 트랙당 8섹터를 갖도록 포맷하는 /8 옵션과는 호환되지 않는다.
/q | 이 옵션은 이미 포맷하여 사용하던 디스크에만 사용할 수 있는 옵션으로, 파일 할당표와 루트 디렉토리만 삭제하는 방법으로 빠르게 포맷한다. 이 옵션을 사용하는 경우 베드 섹터는 검사하지 않으므로 디스크에 베드 섹터 영역이 없다고 확신하는 경우에만 사용한다.
/c | 이 옵션은 베드 클러스터(흔히 베드 섹터라고 한다)로 기록된 부분에 문제가 있는지 점검하도록 하는 옵션이다. 데이터를 기록하는데 문제가 있는 클로스터라면 "B"로 표시하여 다음에 데이터를 기록할 수 없도록 해주고, 단순히 논리적인 오류에 의해 불량 클로스터로 기록된 경우에는 클로스터를 복구해준다. 디스크에 읽기 쓰기 오류가 발생하면 이 옵션을 사용하여 포맷하기 바란다.
/1 | 플로피디스크 드라이브에만 사용할 수 있는 옵션으로 양면 배밀도 플로피디스크 드라이브(360KB, 720KB)에서 한 면만 포맷하기 위해 사용하는데, 포맷 후 디스크 용량은 절반으로 줄어든다. 지금은 사용되지 않는 옵션이다.
/4 | 지금은 사용되지 않는 옵션으로, 1.2MB 고밀도 드라이브에서 360KB 양면 배밀도 5.25인치 플로피디스크를 포맷할 때 사용하는 옵션이다. 대부분의 경우 이 옵션을 사용하여 포맷한 경우 360KB 드라이브에서 사용할 수 있지만 일부 드라이브에서는 호환되지 않는 경우도 있다. /1 옵션과 함께 사용하는 경우에는 180KB 단면 5.25인치 플로피디스크를 포맷한다. 이 옵션은 플로피디스크의 지정하기 위하여 사용되는 /f 옵션이나 /t, /n 옵션과는 함께 지정할 수 없다.
/8 | 지금은 사용하지 않는 옵션으로 트랙당 8섹터를 갖는 5.25인치 디스크를 포맷하기 위해 사용한다. 이 옵션은 MS-DOS 버전 2.0 이하의 버전과 호환되도록 플로피디스크를 포맷한다. /8 옵션은 볼륨 레이블을 지정하기 위한 /v 옵션과 함께 지정할 수 없다.
/f:size | 플로피디스크에만 사용할 수 있는 옵션으로 디스크 용량에 맞게 포맷하기 위해 디스크 크기를 지정한다. /t와 /n 옵션 대신에 이 옵션을 사용하는 것이 좋다. 다음은 size에 사용할 수 있는 값과 디스크의 종류를 나타낸다. 숫자의 뒤에는 K(B) 혹은 M(B)를 사용하여 디스크의 크기를 확실하게 지정할 수 있다. 160 | 160KB, 단면, 배밀도, 5.25인치 디스크
180 | 180KB, 단면, 배밀도, 5.25인치 디스크
320 | 320KB, 양면, 배밀도, 5.25인치 디스크
360 | 360KB, 양면, 배밀도, 5.25인치 디스크
720 | 720KB, 양면, 배밀도, 3.5인치 디스크
1200 또는 1.2 | 1.2MB, 양면, 고밀도, 5.25인치 디스크
1440 또는 1.44 | 1.44MB, 양면, 고밀도, 3.5인치 디스크
2880 또는 2.88 | 2.88MB, 양면, 고밀도, 3.5인치 디스크
/t:track | 플로피디스크에만 사용할 수 있는 옵션으로 디스크 상의 트랙 수를 지정하는데, 이 옵션 대신 /f 옵션을 사용하는 것이 좋다. /f 옵션과 /t 옵션은 동시에 사용될 수 없다. /t 옵션을 사용하는 경우에는 반드시 /n 옵션도 같이 사용해야 한다. 이 두개의 옵션은 디스크의 크기를 지정하는 2가지 방법 중의 하나를 제공하는 것이다.
/n:sectors | 플로피디스크에만 사용할 수 있는 옵션으로 포맷할 디스크의 트랙당 섹터 수를 지정하는데, 이 옵션 대신 /f 옵션을 사용하는 것이 좋다. /f 옵션과 /n 옵션은 동시에 사용될 수 없다.
/s | 도스로 컴퓨터를 부팅하기 위해 필요한 IO.SYS, MSDOS.SYS, COMMAND.COM의 시스템 파일과 공간 늘림 프로그램을 사용한 디스크를 읽는 방법을 담고 있는 시스템 파일인 DBLSPACE.BIN(윈도우 98은 DRVSPACE.BIN)을 시동 드라이브에서 읽어 포맷하는 디스크로 복사해 부팅 가능하도록 만들어준다. 만일 부팅 디스크에서 시스템 파일들을 찾을 수 없으면 시스템 디스크를 시동 드라이브 또는 A 드라이브에 시스템 파일을 가지고 있는 디스크를 넣으라는 메시지가 나타난다. 윈도우 ME에 포함된 Format 명령은 /s 옵션을 지원하지 않는다.
/b | DOS 시스템 파일을 기록할 공간을 확보해두기 위한 옵션으로 단지 이전 버전과의 호환성을 유지하기 위해 제공되는 것이다. 즉, MS-DOS 버전 5.0 이하에서는 SYS 명령어를 사용하여 시스템을 전송할 때 시스템 파일을 기록할 공간이 필요했었지만 MS-DOS 6.0 이후부터는 시스템 파일을 기록할 공간이 없는 경우에도 SYS 명령어를 사용하여 시스템을 전송할 수 있기 때문에 /b 옵션이 필요치 않는 것이다.

■ 참고 사항
☞ 플로피디스크 포맷시 제한 사항
플로피디스크를 포맷할 때 원래 설계된 용량보다 큰 용량으로 포맷하면 안된다. 예를 들면 360KB 플로피디스크를 1.2MB로 포맷하지 않는 것이 좋다.
만약, 원래 용량보다 크게 포맷한 경우에는 데이터를 손상 혹은 손실될 위험이 증가한다. 특히, 720KB 플로피디스크의 오른쪽에 구멍을 뚫어 1.44MB로 사용하는 경우에는 데이터 손실의 위험이 많다.
FORMAT 명령어를 사용할 때 특별히 플로피디스크의 크기를 지정하지 않으면 드라이브의 용량에 맞는 크기로 플로피디스크를 포맷한다.
☞ 볼륨 레이블 지정하기
FORMAT 명령어를 사용할 때 볼륨 레이블을 지정하는 옵션을 사용하지 않는 경우, 디스크의 포맷을 완료한 후 볼륨 레이블을 지정할 수 있도록 다음과 같은 메시지가 나타난다.
Volume label (11 characters, ENTER for none)?
도스에서는 볼륨 레이블에 스페이스를 포함하여 최대 11문자까지 대문자로 입력할 수 있다.
만약, 소문자로 볼륨 레이블을 입력하면 대문자로 변경된다.
볼륨 레이블을 지정하지 않으려면 그냥 <Enter>를 누른다. 볼륨 레이블에 관한 자세한 내용은 Label 명령어를 참조하기 바란다.
☞ 하드디스크 포맷하기
하드디스크를 포맷하기 위해 FORMAT 명령어를 사용하는 경우 하드디스크를 포맷하기 전에 다음과 같은 형식의 메시지가 나타난다.
WARNING, ALL DATA ON NON-REMOVABLE DISK
DRIVE C: WILL BE LOST!
Proceed with Format (Y/N)?
하드디스크를 포맷하려면 <Y>를 누르고 취소하려면 <N>을 누른다.
하드디스크를 포맷은 플로피디스크의 포맷과 엄청난 차이가 있다. 특히 중요한 자료가 저장되어 있는 하드디스크인 경우에는 더욱 그러하다. 그러므로 하드디스크의 포맷은 신중히 고려하여 실행해야 한다.
☞ FORMAT 메시지
포맷이 완료되면 디스크 전체 용량과 결함이 있는 것으로 표시된 영역, /s 혹은 /b 옵션을 사용하면 시스템 파일이 기록된 영역, 그리고 사용할 수 있는 영역의 양 등에 대한 내용을 보여준다.
☞ /q 옵션 사용하기
이미 한번 포맷된 디스크를 다시 포맷하는 경우 /q 옵션을 사용하여 빠르게 포맷할 수 있다.
일반적으로 /q 옵션은 디스크에 베드 섹터(베드 클로스터)가 없는 경우에만 사용하는데, 그 이유는 이 옵션을 지정하면 디스크에서 파일 할당표와 루트 디렉토리만 삭제함으로써 포맷을 빠르게 진행하지만 디스크에 있는 베드 섹터는 검색하지 않기 때문이다.
☞ 방향 전환된 드라이브나 네트워크 드라이브의 포맷
SUBST 명령어를 사용하여 특정 디렉토리가 드라이브로 방향이 전환된 경우에는 FORMAT 명령어를 사용할 수 없다.
또한, 네트워크를 통하여 다른 컴퓨터에 있는 디스크를 포맷할 수 없다.
즉, FORMAT 명령어는 지역 컴퓨터에 장착되어 있는 디스크에만 포맷할 수 있다.
☞ 종료 코드
FORMAT 명령어도 Xcopy나 Diskcopy 명령어처럼 포맷을 완료한 후에 종료 코드를 시스템에 돌려준다.
사용자는 FORMAT 명령어의 오류 원인을 점검하기 위하여 종료 코드를 이용한 배치 프로그램을 작성할 수 있다. 배치 프로그램을 작성하는 방법에 관해서는 Xcopy 명령어를 참조하기 바란다.
다음은 FORMAT 명령어에 의해 발생하는 종료 코드와 그에 대한 설명이다.
0 포맷이 정상적으로 완료되었다.
1 적절하지 않는 옵션이나 매개변수가 사용되었다.
4 치명적인 오류가 발생하였다. (0, 1, 5 이외의 모든 오류)
5 사용자가 포맷 과정에서 나타나는 메시지인 "Proceed with Format (Y/N)?"에 대한 응답으로 <N>을 눌렀다.
■ 사용 예
디폴트 크기를 사용하여 A드라이브에 있는 새로운 플로피디스크를 포맷하려면, 다음과 같이 FORMAT 명령어를 사용한다.
format a:
위의 예에서 한번 이상 포맷된 디스크에 베드 섹터가 없다고 확신하는 경우, 빠르게 포맷을 진행하기 위하여 다음과 같이 FORMAT 명령어를 사용한다.
format a: /q
1.2MB용 A드라이브에서 360KB 5.25인치 양면 디스켓을 포맷하고, 볼륨 레이블로 MARCH REPRT를 지정하려면 다음 3가지 FORMAT 명령어 중에서 아무 것이나 사용할 수 있다.
format a: /4 /v:"march reprt"
format a: /t:40 /n:9 /v:"march reprt"
format a: /f:360 /v:"march reprt"
위의 예에서 레이블로 지정한 MARCH REPRT는 스페이스를 포함하고 있기 때문에 따옴표로 묶어 주어야 한다. 만약 스페이스를 포함한 레이블을 따옴표로 묶어 주지 않으면 부적절한 매개 변수가 사용되었다는 오류 메시지가 나타난다.